Tools Required:
Circuit Kit
EasyVR Commander Software
QuickSynthesis 5 (Optional)
Arduino Software
Materials Required:
Microphone
Bicoloured LED
Arduino Uno
EasyVR
8 ohm speaker (optional)
A-B USB Cable
Step 1: Obtain Hardware
Obtain Arduino and EasyVR. The Arduino can be bought at arduino.cc, and the EasyVR can be bought at www.sparkfun.com.
Step 2: Install Software
Install Arduino software and EasyVR Commander (3.4.10 at time of publication). These can be found at arduino.cc and veear.eu, respectively. At the time of this publication, Arduino 1.0.5 and EasyVR 3.4.10 were the latest software editions.
Step 3: Connect Hardware
Attach EasyVR to Arduino and connect to computer using an A-B USB cable.
Step 4: Familiarization
Familiarize yourself with Arduino code through demos. Once the Arduino software has been installed and the Arduino is connected to the computer, run through some of the built-in demos that the Arduino software features. In Arduino 1.0.5, this can be found by navigating to File > Examples. Once you read and understand how the code works, compile it and upload it to the Arduino. The Arduino website features helpful walkthroughs of how to use the software at http://arduino.cc/en/Tutorial/HomePage.
Step 5: Voice Training
Train EasyVR using Commander Software.
a. Group 0 is the trigger state: if the EasyVR recognizes any word in Group 0, the next state (“listening” in our model) will be entered.
b. Group 1 is the execution state: if the EasyVR recognizes any word in Group 1, it will relay appropriate information back to the Arduino, which will subsequently parse that information and will interact with the hardware by triggering a nurse call.
Step 6: Write Arduino Code
Write or modify Arduino code in order to perform the appropriate actions when the trigger words are uttered.
a. In order to ensure that the attached code works as expected, use Group 0 for the trigger state and Group 1 for the execution state. Furthermore, in order to relay visual cues to the user when there is a state change, use Pin 10 for the positive LED terminal and Pin 11 for the negative terminal. Finally, use Pin 3 for the nurse call relay. These can be changed easily in the code by changing the values of NURSE_CALL_PIN, LED_POS_PIN, and LED_NEG_PIN.
Step 7: Create Audio Out Module
Optionally, install QuickSynthesis 5 and use it to provide audio feedback to the user when the listening state is entered. This requires building a Sound Table for the EasyVR, which is unfortunately somewhat tricky.
a. Download and install the RSC-4x Toolkits CD from here, ftp://ftp4.sensoryinc.com/software/rsc4xtk/rsc4xtoolkit.zip
b. Install the toolkit, and check the option for FluencyChip 3.1.16
c. Run QuickSynthesis with administrator privileges. Right-click the application and select “Run as Administrator” to do this.
d. Create the sound table by importing the audio files you want to play into QuickSynthesis.
e. Go to File then Options, and set the FluentChip for RSC4 Path to where you installed FluencyChip from the RSC-4x Toolkits CD. This is most likely C:SensoryFC3_1_16
f. Build the sound table. Save. Build the sound table again.
g. Set the connection jumper on the EasyVR to UP. Start up commander, and plug in the Arduino.
h. In Commander, go to Update Custom Data and select your saved QuickSynthesis project file. Click Download, and the EasyVR will be loaded with the audio files you just made.
i. Verify that it works by switching the jumper back to PC and viewing the Sound Table entry in Commander.
j. Note: in our design, we had the first sound table entry play back, “Now listening…” and the third entry play, “Calling an aide…” If you change the audio clips but get the order wrong, so they play at the wrong times, you can go into the code and find the lines that say, (easyvr.playSound, EasyVR::VOL_FULL); and change the number to the row of the sound table you want.
Author: Sresht Rengesh